import 'package:flutter/services.dart';
import 'package:plugin_platform_interface/plugin_platform_interface.dart';

import 'ble2318ota_plugin_method_channel.dart';

abstract class Ble2318otaPluginPlatform extends PlatformInterface {
  Ble2318otaPluginPlatform() : super(token: _token);

  static final Object _token = Object();

  static Ble2318otaPluginPlatform _instance = MethodChannelBle2318otaPlugin();

  static Ble2318otaPluginPlatform get instance => _instance;

  static set instance(Ble2318otaPluginPlatform instance) {
    PlatformInterface.verifyToken(instance, _token);
    _instance = instance;
  }

  Future<String?> getPlatformVersion() {
    throw UnimplementedError('platformVersion() has not been implemented.');
  }

  void startOta(String path) {
    throw UnimplementedError('startOta() has not been implemented.');
  }
  void initBlueTools() {
    throw UnimplementedError('startOta() has not been implemented.');
  }

  Future<List<int>> checkFiles(String binPath,String checkPath) {
    throw UnimplementedError('checkFiles() has not been implemented.');
  }

  void otaListener(Future<dynamic> Function(MethodCall call)? handler){
    throw UnimplementedError('getDataPath() has not been implemented.');
  }

  void stopScan() {
    throw UnimplementedError('stopScan() has not been implemented.');
  }


}
